Universit a Di Pisa Veriication of Meta-interpreters Veriication of Meta-interpreters
نویسندگان
چکیده
A novel approach to the veriication of meta-interpreters is introduced. We apply a general purpose veriication method for logic programs, proposed in 28], to the case study of the Vanilla and other logic meta-interpreters. We extend the standard notion of declarative correctness, and design a criterion for proving correctness of meta-interpreters in a general sense, including amalgamated and reeective meta-interpreters. The contribution of this paper can be summarized as follows: under certain natural assumptions, all interesting veriication properties lift up from the object program to the meta-program, including partial correctness, termination, absence of errors, call patterns persistence, correct instances of queries, computed instances of queries. Interestingly, it is possible to establish these results on the basis of purely declarative reasoning, using the mentioned proof method. We believe that the obtained results illustrate the broad applicability of the adopted veriication principles.
منابع مشابه
Verification of Meta-Interpreters
A novel approach to the veriication of meta-interpreters is introduced. We apply a general purpose veriication method for logic programs, proposed in 28], to the case study of the Vanilla and other logic meta-interpreters. We extend the standard notion of declarative correctness, and design a criterion for proving correctness of meta-interpreters in a general sense, including amalgamated and re...
متن کاملUniversit a Di Pisa Modular Veriication of Logic Programs Modular Veriication of Logic Programs
Recentely, in Rug94, PR96] a new approach to veriication of logic and Prolog programs has been proposed, whose main advantage is the possibility to reason on diierent properties in a uniied framework. In this paper, we show an equivalent formulation of that proof method which is well-suited for modular program veriication. The notion of modularity taken into account is based on stratiication. W...
متن کاملDynamic Verification of C++ Generic Algorithms
Dynamic veriication is a new approach to formal veriication, applicable to generic algorithms such as those found in the Standard Template Library (STL, part of the Draft ANSI/ISO C++ Standard Library). Using behavioral abstraction and symbolic execution techniques, veriications are carried out at a meta-level such that the results can be used in a variety of instances of the generic algorithms...
متن کاملUniversit a Di Pisa Veriication of Logic Programs Veriication of Logic Programs
We propose a proof method in the style of Hoare's logic, aimed at providing a unifying framework for the veriication of logic and Prolog programs with respect to their speciications. The method, which relies on purely declarative reasoning, has been designed as a trade-oo between expressive power and ease of use. On the basis of a few simple principles, we reason uniformly on several properties...
متن کاملThe Basic Units for Planning andVerifying
This paper concerns a knowledge structure called method, within a computational model for human oriented deduction. With human oriented theorem proving cast as an interleaving process of planning and veriication, the body of all methods reeects the reasoning repertoire of a reasoning system. While we adopt the general structure of methods introduced by Alan Bundy, we make an essential advanceme...
متن کامل